In the course of supporting production software, errors may frequently be reported in the form of stack traces for languages using stack based architectures. After a user encounters such a problem, they may report a bug to the developer along with the accompanying stack trace. Using this information, the developer may diagnose the problem and provide a solution or fix for the problem. Currently, logging technologies exist including core dump analysis (when the whole program has crashed), and those in the area of aspect oriented programming and technology relating to bytecode injection in Java.